Multi-write memory circuit with a data input and a clock input

ABSTRACT

Various types of memory circuits are described. A memory circuit may include a state-storage feedback loop coupled to a clock input and to a data input. The data input is introduced into the feedback loop at multiple points, and propagated in parallel from those points to other points in the feedback loop.

RELATED APPLICATION

This application is related to U.S. patent application Ser. No. 11/396,114 by R. Masleid et al., filed on Mar. 31, 2006, entitled “Multi-Write Memory Circuit with Multiple Data Inputs,” assigned to the assignee of the present invention, and hereby incorporated by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Embodiments of the present invention relate to electronic circuits, in particular memory circuits.

2. Related Art

In general, a memory circuit is a type of circuit whose output depends on both the input to the circuit and the circuit's previous state (the state prior to the input). A state-storage feedback loop included in a memory circuit allows a previous input, along with a current input, to affect the current output.

A memory circuit that can reduce the time needed to secure a new state in the feedback loop would be advantageous.

SUMMARY OF THE INVENTION

Embodiments in accordance with the present invention pertain to different types of memory circuits. In one embodiment, a memory circuit has a state-storage feedback loop coupled to a clock input and to a data input. The data input is introduced into the feedback loop at multiple points, and propagated in parallel from those points to other points in the feedback loop.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the present invention and, together with the description, serve to explain the principles of the invention. The drawings referred to in this description should not be understood as being drawn to scale except if specifically noted.

FIGS. 1 and 2 illustrate embodiments of a memory circuit having a data input and a clock input and reduced minimum retention voltage in accordance with the present invention.

FIGS. 3 and 4 illustrate embodiments of a three-state inverter in accordance with the present invention.

FIGS. 5, 6, 7 and 8 illustrate embodiments of a multi-write memory circuit having a data input and a clock input and reduced minimum retention voltage in accordance with the present invention.

FIGS. 9 and 10 illustrate embodiments of a memory circuit having first and second data inputs and reduced minimum retention voltage in accordance with the present invention.

FIGS. 11, 12, 13, 14, 15 and 16 illustrate embodiments of a multi-write memory circuit having first and second data inputs and reduced minimum retention voltage in accordance with the present invention.

FIG. 17 is a flowchart of a method for writing state to a memory circuit having a data input and a clock input and reduced minimum retention voltage in accordance with one embodiment of the present invention.

FIG. 18 is a flowchart of a method for writing state to a memory circuit having first and second data inputs and reduced minimum retention voltage in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the various embodiments of the invention, examples of which are illustrated in the accompanying drawings. While the invention will be described in conjunction with these embodiments, it will be understood that they are not intended to limit the invention to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the appended claims. Furthermore, in the following detailed description of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be recognized by one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the present invention.

Memory circuits in accordance with the present invention may be implemented as latches or flip-flops. In general, the memory circuits described herein are devices that store one bit.

Reduced Vmin Circuits with a Data Input and a Clock Input

FIG. 1 is a schematic of a memory circuit 10 having a data input D, a control input (e.g., clock input clk), and an output Q-bar in accordance with one embodiment of the present invention. In comparison to a conventional memory circuit, the state-storage feedback loop 14 of circuit 10 includes additional elements; the additional elements may be referred to collectively as a redundant element. Specifically, in addition to inverter 15 and three-state inverter 18, the feedback loop 14 includes inverters 16 and 17. The inverters 16 and 17 affect the statistical and electrical behavior of the circuit, and in particular statistically lower the minimum retention voltage (Vmin) of the circuit 10, where Vmin is the minimum voltage at which state can be successfully retained by a memory circuit such as circuit 10. Reducing Vmin may also reduce standby voltage, and consequently may reduce standby leakage and standby power. Furthermore, reducing Vmin may reduce the sensitivity of circuit 10 to transistor mismatch that can occur during fabrication. Also, in comparison to a conventional memory circuit, circuit 10 advantageously has a greater static noise margin (SNM).

FIG. 2 is a schematic of a memory circuit 20 having a data input D, a clock input clk, and an output Q-bar in accordance with another embodiment of the present invention. In comparison to feedback loop 14 of FIG. 1, the state-storage feedback loop 27 of circuit 20 includes additional elements. Specifically, in addition to inverter 21 and three-state inverter 26, the feedback loop 27 includes inverters 21, 22, 23 and 24. The extended length of feedback loop 27 relative to feedback loop 14 can enhance the advantages mentioned above.

FIG. 3 is a schematic of an embodiment of a three-state inverter 30 in accordance with the present invention. Three-state inverter 30 includes multiple p-type devices and multiple n-type devices (transistors). The p-type devices are configured to pull the output high (when appropriate) and the n-type devices are configured to pull the output low. Consequently, the drive capability of three-state inverter 30 is less than the drive capability of a conventional inverter.

In the example of FIG. 3, three-state inverter 30 includes two p-type devices 32 and 33, and two n-type devices 34 and 35. The gates of devices 32 and 35 are coupled to the input. The gate of device 33 is coupled to the output of an inverter 31, which receives an enable signal, and the gate of device 34 is also coupled to the enable input. In the example of FIG. 3, when the enable signal is high, then the output is driven.

FIG. 4 is a schematic of another embodiment of a three-state inverter 40 in accordance with the present invention. In the example of FIG. 4, three-state inverter 40 includes two p-type devices 42 and 43, and two n-type devices 44 and 45. The gates of devices 42 and 45 are coupled to the input. The gate of device 44 is coupled to the output of an inverter 41, which receives a disable signal, and the gate of device 43 is also coupled to the disable input. In the example of FIG. 4, when the disable signal is low, then the output is driven.

Multi-Write Reduced Vmin Circuits with a Data Input and a Clock Input

FIG. 5 is a schematic of a multi-write memory circuit 50 having a data input D, a clock input clk, and an output Q-bar. The state-storage feedback loop 51 of circuit 50 includes an inverter 52, a three-state inverter 53, an inverter 54 and a three-state inverter 55, coupled in series. The inverter 54 and the three-state inverter 55 constitute a redundant element that reduces the minimum retention voltage of circuit 50. Circuit 50 may be referred to as a multi-write quad Vmin latch.

The three-state inverters 53 and 55 each have a clock input that, in the embodiment of FIG. 5, provides a disable signal to the three-state inverters 53 and 55. A data input of the three-state inverter 53 is coupled to an output of the inverter 52, and a data input of the three-state inverter 55 is coupled to an output of the inverter 54. The three-state inverters 53 and 55 buffer the state received from the inverters 52 and 54, respectively, subject to the state of a clock signal.

In one embodiment, a three-state inverter 56 is coupled between the data input D and inverter 54, and a three-state inverter 57 is coupled between the data input D and inverter 52. The three-state inverters 56 and 57 each have a clock input that, in the embodiment of FIG. 5, provides an enable signal to the three-state inverters 56 and 57.

Significantly, according to the present embodiment of the present invention, the data input signal D is sensed in parallel by both the inverter 52 and the inverter 54. That is, according to the present embodiment of the present invention, the data input D is written (or driven or loaded) in parallel into feedback loop 51 at multiple locations, labeled A and B, instead of in just one location. An update of the remainder of feedback loop 51 proceeds in parallel from each of the write locations A and B.

The feedback loop 14 of circuit 10 (FIG. 1) is similar to the feedback loop 51 of FIG. 5. However, in contrast to circuit 50, data is written to feedback loop 14 of circuit 10 at just one location, and thus the time needed to update feedback loop 14 is essentially the time it takes for an input signal to be propagated around feedback loop 14. Feedback loop 14 is updated in four inversions, while feedback loop 51 is updated in two inversions. Consequently, feedback loop 51 is updated in about half the time that would be needed to update feedback loop 14; it is recognized that some speed may be lost in a longer feedback loop due to increased parasitic side loads.

In general, according to embodiments of the present invention, a state-storage feedback loop of a reduced Vmin memory circuit can be updated in less time. Thus, according to embodiments of the present invention, the time (e.g., hold time, setup time, or some other measure) needed to secure a new state in the memory circuit is reduced, in this respect improving the performance of reduced Vmin memory circuits.

FIGS. 6, 7 and 8 are schematics of other embodiments of a multi-write memory circuit having a data input and a clock input and reduced minimum retention voltage in accordance with the present invention. In FIG. 6, the state-storage feedback loop 61 of memory circuit 60 includes an inverter 62, a three-state inverter 63, an inverter 64, a three-state inverter 65, an inverter 66 and a three-state inverter 67, coupled in series. The inverter 64, three-state inverter 65, inverter 66 and three-state inverter 67 constitute a redundant element that reduces the minimum retention voltage of circuit 60. Circuit 60 may be referred to as a multi-write hex Vmin latch.

The three-state inverters 63, 65 and 67 each have a clock input that, in the embodiment of FIG. 6, provides a disable signal to the three-state inverters 63, 65 and 67. A data input of the three-state inverter 63 is coupled to an output of the inverter 62, a data input of the three-state inverter 65 is coupled to an output of the inverter 64, and a data input of the three-state inverter 67 is coupled to an output of the inverter 66. The three-state inverters 63, 65 and 67 buffer the state received from the inverters 62, 64 and 66, respectively, subject to the state of a clock signal.

In one embodiment, a three-state inverter 68 is coupled between the data input D and inverter 64, a three-state inverter 69 is coupled between the data input D and inverter 62, and a three-state inverter 601 is coupled between the data input D and inverter 66. The three-state inverters 68, 69 and 601 each have a clock input that, in the embodiment of FIG. 6, provides an enable signal to the three-state inverters 68, 69 and 601.

According to the present embodiment of the present invention, the data input D is written in parallel into feedback loop 61 at multiple locations, labeled A, B and C, instead of in just one location. An update of the remainder of feedback loop 61 proceeds in parallel from each of the write locations A, B and C. Thus, like feedback loop 51 of FIG. 5, feedback loop 61 is updated in two inversions, despite the extended length of feedback loop 61 relative to feedback loop 51.

In FIG. 7, the state-storage feedback loop 81 of memory circuit 80 includes an inverter 82, a three-state inverter 83, an inverter 84, a three-state inverter 85, an inverter 86 and a three-state inverter 87, coupled in series. The inverter 84, three-state inverter 85, inverter 86 and three-state inverter 87 constitute a redundant element that reduces the minimum retention voltage of circuit 80. Circuit 80 may be referred to as a multi-write series hex Vmin latch.

The three-state inverters 83, 85 and 87 each have a clock input that, in the embodiment of FIG. 7, provides a disable signal to the three-state inverters 83, 85 and 87. A data input of the three-state inverter 83 is coupled to an output of the inverter 82, a data input of the three-state inverter 85 is coupled to an output of the inverter 84, and a data input of the three-state inverter 87 is coupled to an output of the inverter 86. The three-state inverters 83, 85 and 87 buffer the state received from the inverters 82, 84 and 86, respectively, subject to the state of a clock signal.

In one embodiment, a three-state inverter 88 is coupled between the data input D and inverter 84, a three-state inverter 89 is coupled between the data input D and inverter 82, and a three-state inverter 801 is coupled between the data input D and inverter 86. The three-state inverters 88, 89 and 801 each have a clock input that, in the embodiment of FIG. 7, provides an enable signal to the three-state inverters 88, 89 and 801.

According to the present embodiment of the present invention, the data input D is written in parallel into feedback loop 81 at multiple locations, labeled A, B and C, instead of in just one location. An update of the remainder of feedback loop 81 proceeds in parallel from each of the write locations A, B and C. Thus, as in the examples above, feedback loop 81 is updated in two inversions, despite the extended length of feedback loop 81 relative to some of those examples.

In FIG. 8, the state-storage feedback loop 101 of memory circuit 100 includes an inverter 102, a three-state inverter 103, an inverter 104 and a three-state inverter 105, coupled in series. The inverter 104 and three-state inverter 105 constitute a redundant element that reduces the minimum retention voltage of circuit 100. Circuit 100 may be referred to as a multi-write series-inversion Vmin latch.

The three-state inverters 103 and 105 each have a clock input that, in the embodiment of FIG. 8, provides a disable signal to the three-state inverters 103 and 105. A data input of the three-state inverter 103 is coupled to an output of the inverter 102, and a data input of the three-state inverter 105 is coupled to an output of the inverter 104. The three-state inverters 103 and 105 buffer the state received from the inverters 102 and 104, respectively, subject to the state of a clock signal.

In one embodiment, a three-state inverter 106 is coupled between the data input D and inverter 102, and a three-state inverter 107 is coupled between the data input D and inverter 104. The three-state inverters 106 and 107 each have a clock input that, in the embodiment of FIG. 8, provides an enable signal to the three-state inverters 106 and 107.

According to the present embodiment of the present invention, the data input D is written in parallel into feedback loop 101 at multiple locations, labeled A and B, instead of in just one location. An update of the remainder of feedback loop 61 proceeds in parallel from each of the write locations A and B. Thus, like the examples above, feedback loop 101 is updated in two inversions.

Embodiments in accordance with the present invention are not limited to the examples described by FIGS. 5-8 above. In general, embodiments in accordance with the present invention introduce a data input into multiple points on a state-storage feedback loop. Accordingly, a feedback loop of arbitrary length can be updated in as few as two inversions, depending on the number of write locations.

In one embodiment, the feedback loop includes an even number of circuit elements (e.g., inverters and three-state inverters) coupled in series. In one such embodiment, the feedback loop includes a same number of inverters and three-state inverters coupled alternately in series. Using circuit 50 of FIG. 5 as an example, feedback loop 51 includes, in order, inverter 52, three-state inverter 53, inverter 54 and three-state inverter 55. The data input is introduced into feedback loop 51 at the inputs of the inverters 52 and 54, which alternate with three-state inverters 53 and 55 in feedback loop 51, and the three-state inverters 53 and 55 buffer the state output by the inverters 52 and 54, subject to the clock signal clk.

From another perspective, the state-storage feedback loop can be viewed as having a number of stages where, in one embodiment, each stage includes a first element (e.g., an inverter) and a second element (e.g., a three-state inverter) coupled in series. In one such embodiment, each stage has a clock input and a data input, where a state on the data input is written in parallel into each of the stages.

The multi-write reduced Vmin circuits of FIGS. 5-8 can be used in combination with the reduced Vmin circuits of FIGS. 1-2. Because a multi-write Vmin circuit may have larger data and clock input capacitances than a reduced Vmin circuit, and thus may slightly increase power dissipation within the feedback loop, it may be appropriate to use multi-write reduced Vmin circuits in critical paths (for speed) and reduced Vmin circuits in non-critical paths (to conserve power).

Reduced Vmin Circuits with First and Second Data Inputs

FIG. 9 is a schematic of a memory circuit 110 having a first data input set-bar, a second data input reset-bar, a first output Q, and a second output Q-bar in accordance with one embodiment of the present invention. In comparison to a conventional memory circuit, the state-storage feedback loop 111 of circuit 110 includes additional elements (which may be referred to collectively as a redundant element). Specifically, in addition to NAND gates 112 and 113, the feedback loop 111 includes inverters 114 and 115. The inverters 114 and 115 affect the statistical and electrical behavior of the circuit, and in particular statistically lower the Vmin of the circuit 110. As mentioned previously herein, reducing Vmin may also reduce standby voltage, and consequently may reduce standby leakage and standby power. Furthermore, reducing Vmin may reduce the sensitivity of circuit 110 to transistor mismatch that can occur during fabrication. Also, in comparison to a conventional memory circuit, circuit 110 advantageously has a greater SNM.

FIG. 10 is a schematic of a memory circuit 120 having a first data input set-bar, a second data input reset-bar, a first output Q, and a second output Q-bar in accordance with another embodiment of the present invention. In comparison to feedback loop 111 of FIG. 9, the state-storage feedback loop 121 of circuit 120 includes additional elements. Specifically, in addition to NAND gates 122 and 123, the feedback loop 121 includes inverters 124, 125, 126 and 126. The extended length of feedback loop 121 relative to feedback loop 111 can enhance the advantages mentioned above.

Reduced Vmin Multi-Write Circuits with First and Second Data Inputs

FIG. 11 is a schematic of a multi-write memory circuit 130 having a first data input set-bar, a second data input reset-bar, a first output Q, and a second output Q-bar in accordance with another embodiment of the present invention. Circuit 130 may be referred to as a multi-write reduced Vmin set-reset latch.

The state-storage feedback loop 131 of circuit 130 includes NAND gates 132, 133, 134 and 135, coupled in series. The NAND gates 134 and 135 constitute a redundant element that reduces the minimum retention voltage of circuit 130.

Significantly, according to the present embodiment of the present invention, the data input signal set-bar is sensed in parallel by both NAND gate 133 and NAND gate 135, and the data input signal reset-bar is sensed in parallel by both NAND gate 132 and NAND gate 134. That is, according to the present embodiment of the present invention, the set-bar signal is written in parallel into feedback loop 131 at multiple locations, labeled A and B, instead of in just one location, and the reset-bar signal is written in parallel into feedback loop 131 at multiple locations, labeled C and D, instead of in just one location. Signals proceed in parallel through feedback loop 131 from each of the write locations A, B, C and D.

Thus, the time needed to update feedback loop 131 is less than the propagation time around a conventional feedback loop (that is, a feedback loop having only a single write location). Feedback loop 131 is updated in two inversions; if there was only a single write location, then it would take four inversions to update the feedback loop.

In general, according to embodiments of the present invention, a state-storage feedback loop of a reduced Vmin memory circuit is updated in less time than the propagation time around the feedback loop. Thus, according to embodiments of the present invention, the time (e.g., hold time, setup time, or some other measure) needed to secure a new state in the memory circuit is reduced, in this respect improving the performance of reduced Vmin memory circuits.

FIGS. 12, 13, 14, 15 and 16 are schematics of other embodiments of a multi-write memory circuit having first and second data inputs and reduced minimum retention voltage in accordance with the present invention. In FIG. 12, the state-storage feedback loop 141 of circuit 140 includes an inverter 142, an OR-AND invert (OAI) stage that includes OR gate 143 and NAND gate 144, an inverter 145, and another OAI stage that includes OR gate 146 and NAND gate 147, coupled in series. The inverter 145, the OR gate 146 and the NAND gate 147 constitute a redundant element that reduces the minimum retention voltage of circuit 140. Circuit 140 may be referred to as a quad inversion OAI multi-write Vmin set-reset latch.

According to the present embodiment of the present invention, the data input signal set-bar is sensed in parallel by both NAND gate 144 and NAND gate 147, and the data input signal reset is sensed in parallel by both OR gate 143 and OR gate 146. That is, according to the present embodiment of the present invention, the set-bar signal is written in parallel into feedback loop 141 at multiple locations, labeled A and B, instead of in just one location, and the reset signal is written in parallel into feedback loop 141 at multiple locations, labeled C and D, instead of in just one location. Signals proceed in parallel through feedback loop 141 from each of the write locations A, B, C and D. Thus, feedback loop 141 is updated in two inversions, despite the presence of the redundant element.

In FIG. 13, the state-storage feedback loop 151 of circuit 150 includes an inverter 152, an AND-OR invert (AOI) stage that includes AND gate 153 and NOR gate 154, an inverter 155, and another AOI stage that includes AND gate 156 and NOR gate 157, coupled in series. The inverter 155, the AND gate 156 and the NOR gate 157 constitute a redundant element that reduces the minimum retention voltage of circuit 150. Circuit 150 may be referred to as a quad inversion AOI multi-write Vmin set-reset latch.

According to the present embodiment of the present invention, the data input signal set-bar is sensed in parallel by both AND gate 153 and AND gate 156, and the data input signal reset is sensed in parallel by both NOR gate 154 and NOR gate 157. That is, according to the present embodiment of the present invention, the set-bar signal is written in parallel into feedback loop 151 at multiple locations, labeled A and B, instead of in just one location, and the reset signal is written in parallel into feedback loop 151 at multiple locations, labeled C and D, instead of in just one location. Signals proceed in parallel through feedback loop 151 from each of the write locations A, B, C and D. Thus, feedback loop 151 is updated in two inversions, despite the presence of the redundant element.

In FIG. 14, the state-storage feedback loop 161 of circuit 160 includes NAND gates 162, 163, 164, 165, 166 and 167, coupled in series. The NAND gates 164, 165, 166 and 167 constitute a redundant element that reduces the minimum retention voltage of circuit 160. Circuit 160 may be referred to as a hex NAND multi-write Vmin set-reset latch.

According to the present embodiment of the present invention, the data input signal set-bar is sensed in parallel by NAND gates 163, 165 and 167, and the data input signal reset-bar is sensed in parallel by NAND gates 162, 164 and 166. That is, according to the present embodiment of the present invention, the set-bar signal is written in parallel into feedback loop 161 at multiple locations, labeled A, B and C, instead of in just one location, and the reset-bar signal is written in parallel into feedback loop 161 at multiple locations, labeled D, E and F, instead of in just one location. Signals proceed in parallel through feedback loop 161 from each of the write locations A, B, C, D, E and F. Thus, feedback loop 161 is updated in two inversions, despite the presence of the redundant element.

In FIG. 15, the state-storage feedback loop 171 of circuit 170 includes an inverter 172, an OAI stage that includes OR gate 173 and NAND gate 174, an inverter 175, an OAI stage that includes OR gate 176 and NAND gate 177, an inverter 178, and an OAI stage that includes OR gate 179 and NAND gate 1701, coupled in series. The inverters 175 and 178, the OR gates 176 and 179, and the NAND gates 177 and 1701 constitute a redundant element that reduces the minimum retention voltage of circuit 170. Circuit 170 may be referred to as a hex inversion OAI multi-write Vmin set-reset latch.

According to the present embodiment of the present invention, the data input signal set-bar is sensed in parallel by NAND gates 174, 177 and 1701, and the data input signal reset is sensed in parallel by OR gates 173, 176 and 179. That is, according to the present embodiment of the present invention, the set-bar signal is written in parallel into feedback loop 171 at multiple locations, labeled A, B and C, instead of in just one location, and the reset signal is written in parallel into feedback loop 171 at multiple locations, labeled D, E and F, instead of in just one location. Signals proceed in parallel through feedback loop 171 from each of the write locations A, B, C, D, E and F. Thus, feedback loop 171 is updated in two inversions, despite the presence of the redundant element.

In FIG. 16, the state-storage feedback loop 181 of circuit 180 includes an inverter 182, an AOI stage that includes AND gate 183 and NOR gate 184, an inverter 185, and an AOI stage that includes AND gate 186 and NOR gate 187, an inverter 188, and an AOI stage that includes AND gate 189 and NOR gate 1801, coupled in series. The inverters 185 and 188, the AND gates 186 and 189, and the NOR gates 187 and 1801 constitute a redundant element that reduces the minimum retention voltage of circuit 180. Circuit 180 may be referred to as a hex inversion AOI multi-write Vmin set-reset latch.

According to the present embodiment of the present invention, the data input signal set-bar is sensed in parallel by AND gates 183, 186 and 189, and the data input signal reset is sensed in parallel by NOR gates 184, 187 and 1801. That is, according to the present embodiment of the present invention, the set-bar signal is written in parallel into feedback loop 181 at multiple locations, labeled A, B and C, instead of in just one location, and the reset signal is written in parallel into feedback loop 181 at multiple locations, labeled D, E and F, instead of in just one location. Signals proceed in parallel through feedback loop 181 from each of the write locations A, B, C, D, E and F. Thus, feedback loop 181 is updated in two inversions, despite the presence of the redundant element.

Embodiments in accordance with the present invention are not limited to the examples described by FIGS. 11-16 above. In general, embodiments in accordance with the present invention introduce first and second data inputs into multiple points on a state-storage feedback loop. Accordingly, a feedback loop of arbitrary length can be updated in as few as two inversions, depending on the number of write locations.

In one embodiment, the feedback loop includes an even number of circuit elements (e.g., gates) coupled in series. In one embodiment, a first data input is introduced into the feedback loop at the inputs of alternate circuit elements (e.g., at the input of every other gate in the feedback loop), and a second data input is introduced into the feedback loop at the circuit elements between the alternate circuit elements.

From another perspective, the state-storage feedback loop can be viewed as having a number of stages, where the first data input is written in parallel into each of the stages, and where the second data input is also written in parallel into each of the stages.

The multi-write reduced Vmin circuits of FIGS. 11-16 can be used in combination with the reduced Vmin circuits of FIGS. 9-10. Because a multi-write Vmin circuit may have larger data capacitances than a reduced Vmin circuit, and thus may slightly increase power dissipation within the feedback loop, it may be appropriate to use multi-write reduced Vmin circuits in critical paths (for speed) and reduced Vmin circuits in non-critical paths (to conserve power).

Methods for Writing State to Memory Circuits

FIG. 17 is a flowchart 1900 of a method for writing state to a memory circuit having a data input and a clock input and reduced minimum retention voltage in accordance with one embodiment of the present invention (e.g., the circuits of FIGS. 5-8). Although specific steps are disclosed in flowchart 1900, such steps are exemplary. That is, embodiments in accordance with the present invention are well-suited to performing various other steps or variations of the steps recited in flowchart 1900. It is appreciated that the steps in flowchart 1900 may be performed in an order different than presented and that the steps in flowchart 1900 are not necessarily performed in the sequence illustrated.

In step 1910 of FIG. 17, a clock input is received at a first set of multiple points in a state-storage feedback loop of a memory circuit.

In step 1920, a data input is received at a second set of multiple points on the feedback loop. In one embodiment, the data input is received at alternate circuit elements of the feedback loop. For example, the feedback loop may include a same number of inverters and three-state inverters coupled alternately in series. The data input is received at the inputs of the inverters.

In step 1930, the data input is propagated from the second set of multiple points to other points in the feedback loop.

FIG. 18 is a flowchart 2000 of a method for writing state to a memory circuit having first and second data inputs and reduced minimum retention voltage in accordance with one embodiment of the present invention (e.g., the circuits of FIGS. 11-16). Although specific steps are disclosed in flowchart 2000, such steps are exemplary. That is, embodiments in accordance with the present invention are well-suited to performing various other steps or variations of the steps recited in flowchart 2000. It is appreciated that the steps in flowchart 2000 may be performed in an order different than presented and that the steps in flowchart 2000 are not necessarily performed in the sequence illustrated.

In step 2010 of FIG. 18, a first data input is received at a first set of multiple points in a state-storage feedback loop of a memory circuit.

In step 2020, a second data input is received at a second set of multiple points in the feedback loop.

In step 2030, the first and second data inputs are propagated from the first and second sets of points to other points in the feedback loop.

In summary, embodiments in accordance with the present invention can reduce the time needed to secure a new state in a feedback loop of a memory circuit.

Embodiments in accordance with the present invention are thus described. While the present invention has been described in particular embodiments, it should be appreciated that the present invention should not be construed as limited by such embodiments, but rather construed according to the below claims. 

1. A memory circuit comprising: a state-storage feedback loop having a clock input and a data input, wherein the memory circuit is configured to concurrently introduce a same data input value into the state-storage feedback loop at multiple points on the state-storage feedback loop, wherein the multiple points correspond to the input sides of selected circuit elements in the state-storage feedback loop.
 2. The memory circuit of claim 1, wherein the state-storage feedback loop comprises an even number of circuit elements coupled in series, and wherein the multiple points correspond to points between every other circuit element.
 3. The memory circuit of claim 2, wherein each circuit element between the every other circuit element is configured to receive the clock input.
 4. The memory circuit of claim 1, wherein the state-storage feedback loop comprises a same number of inverters and three-state inverters, and wherein the inverters and the three-state inverters are coupled alternately in series and configured such that a first inverter drives a first three-state inverter that drives a second inverter that drives a second three-state inverter.
 5. The memory circuit of claim 4, wherein the multiple points correspond to inputs of the inverters.
 6. The memory circuit of claim 4, wherein each of the three-state inverters is configured to receive the clock input.
 7. The memory circuit of claim 4, wherein the state-storage feedback loop comprises at least two inverters and at least two three-state inverters.
 8. The memory circuit of claim 1, further comprising a plurality of three-state inverters, wherein a three-state inverter of the plurality of three-state inverters is coupled between the data input and each of the multiple points.
 9. The memory circuit of claim 8, wherein each of the three-state inverters comprises an inverter, a first p-type device, a second p-type device, a first n-type device, and a second n-type device.
 10. A memory circuit comprising: a clock input coupled to a state-storage feedback loop having a plurality of stages; a data input coupled to the stages, wherein the memory circuit is configured such that: the data input has a same state that is written into the stages; and the same state at the data input is concurrently written into the stages on the input side of an element in a stage; and an output coupled to the stages, wherein a first state at the data input and a second state at the data input that is subsequent to the first state are both configured to affect a state at the output.
 11. The memory circuit of claim 10, wherein the stages are coupled in series, wherein the stages comprise a stage having a first element and a second element coupled in series, wherein the state at the data input is configured to be input to the first element, and wherein the second element is configured to receive both the clock input and a state that is output from the first element.
 12. The memory circuit of claim 10, wherein the stages comprise a stage having an inverter and a three-state inverter coupled in series.
 13. The memory circuit of claim 12, wherein the state at the data input is configured to be input to the inverter in the stage.
 14. The memory circuit of claim 12, wherein the three-state inverter in the stage is configured to receive both the clock input and a state from the inverter in the stage.
 15. The memory circuit of claim 12, wherein for each of the stages, the three-state inverter comprises an inverter, a first p-type device, a second p-type device, a first n-type device, and a second n-type device.
 16. The memory circuit of claim 10, further comprising a plurality of three-state inverters, wherein a three-state inverter of the plurality of three-state inverters is coupled between the data input and the stages.
 17. A method of writing state to a memory circuit, the method comprising: receiving a clock input at a first plurality of points in a state-storage feedback loop of the memory circuit; receiving a data input at a second plurality of points on the state-storage feedback loop, wherein the data input has a value associated therewith, and wherein a same value of the data input is concurrently sensed at each of the second plurality of points, wherein the points in the second plurality each correspond to the input side of a circuit element in the state-storage feedback loop; and propagating the data input from the second plurality of points to other points in the state-storage feedback loop.
 18. The method of claim 17, further comprising receiving the data input at alternate circuit elements of the state-storage feedback loop.
 19. The method of claim 18, further comprising: receiving the clock input at circuit elements between the alternate circuit elements; and receiving, from the alternate circuit elements, a state at the circuit elements between the alternate circuit elements.
 20. The method of claim 17, wherein the state-storage feedback loop comprises a same number of inverters and three-state inverters, and wherein the inverters and the three-state inverters are coupled alternately in series and configured such that a first inverter drives a first three-state inverter that drives a second inverter that drives a second three-state inverter.
 21. The method of claim 20, further comprising receiving the data input at inputs of the inverters.
 22. The method of claim 20, further comprising receiving a state and a clock input at the three-state inverters.
 23. The method of claim 20, wherein the state-storage feedback loop comprises at least two inverters and at least two three-state inverters.
 24. The method of claim 17, wherein the memory circuit further comprises a plurality of three-state inverters, wherein a three-state inverter of the plurality of three-state inverters is coupled between a data input of the memory circuit and each point of the second plurality of points.
 25. The method of claim 24, wherein each of the three-state inverters comprises an inverter, a first p-type device, a second p-type device, a first n-type device, and a second n-type device. 